package com.zifuchuan.zuoye;

import java.util.Scanner;

/*
BCD  BC DCB D
键盘录入一个字符串，统计该字符串中大写字母字符，小写字母字符，
数字字符出现的次数(不考虑其他字符)
 */
public class HomeWork {
    public static void main(String[] args) {
        // 键盘录入字符串
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String s = sc.nextLine();
        //  转字符串组
        char[] chars = s.toCharArray();
        count(chars);
        System.out.println("请输入一个字符串");
        String s1 = sc.nextLine();
        boolean b = reverse(s1);
        System.out.println("这个字符串是不是对称字符串的结果是:"+b);


    }

    public static void count(char[] chars) {


        //  定义三个变量记录大小写字母字符和数字字符出现的次数
        int count1 = 0;
        int count2 = 0;
        int count3 = 0;
        // 遍历数组
        for (int i = 0; i < chars.length; i++) {
            //   chars[i]
            //  判断字符串中的大小写字母及数字字符
            if (chars[i] >= 'A' && chars[i] <= 'Z') {
                count1++;
            } else if (chars[i] >= 'a' && chars[i] <= 'z') {
                count2++;
            } else if (chars[i] >= '0' && chars[i] <= '9') {
                count3++;
            }
        }
        System.out.println("大写字母的个数是:" + count1);
        System.out.println("小写字母的个数是:" + count2);
        System.out.println("数字的个数是:" + count3);
    }

    /*
    请定义一个方法用于判断一个字符串 是否是  对称的字符串，并在主方法中测试方法。
    例如："abcba"、"上海自来水来自海上"均为对称字符串。
       类型 是否是  boolean
       返回值   true/false
     */
    public static boolean reverse(String s1) {
        boolean flag =true;
        StringBuilder sb = new StringBuilder(s1);
        sb.reverse();
        if (s1.equals(sb.toString())){
            return flag;
        }else{
            return false;
        }


    }
}
